﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

using System.IO.Ports;

namespace mc_tester
{
    public partial class AppSettings : Form
    {
        private ApplicationForm _applicationForm;

        public AppSettings()
        {
            InitializeComponent();
        }
        //konstruktor
        public AppSettings(ApplicationForm af)
        {
            //eltároljuk az applikáció formot
            _applicationForm = af;

            InitializeComponent();
            //elérhető soros portok lekérése
            COM_ports_names();
            //a settingek szerinti állapot érvényesítése a kontrollokon
            parityComboBox.Text = Properties.Settings.Default.PARITY;
            baudComboBox.Text=Properties.Settings.Default.BAUDRATE;
            stopBitcomboBox.Text = Properties.Settings.Default.STOPBITS;
            dataBitComboBox.Text =Properties.Settings.Default.DATABITS;

        }

        //a számítógép soros portjainak lekérése
        void COM_ports_names()
        {
            // Soros portok listáját lekérük
            string[] ports = SerialPort.GetPortNames();

            //feltöltjük a combot 
            foreach (string port in ports)
            {
                portValasztoCombo.Items.Add(port);
            }
            // a kiválasztott beállítása
            portValasztoCombo.SelectedItem = Properties.Settings.Default.COMPORT;
            this.Focus();
        }

        //mentés gomb
        private void saveButton_Click(object sender, EventArgs e)
        {
            Properties.Settings.Default.COMPORT = portValasztoCombo.SelectedItem.ToString();
            Properties.Settings.Default.BAUDRATE = baudComboBox.Text;
            Properties.Settings.Default.STOPBITS = stopBitcomboBox.Text;
            Properties.Settings.Default.DATABITS = dataBitComboBox.Text;
            Properties.Settings.Default.PARITY = parityComboBox.Text;

            Properties.Settings.Default.Save();
            //setting-ek érvényesítése, itt csak a port name megy át a sorot portig!!!
            //A többi, baud rate, parity, stop, flow, nem.
            _applicationForm.toolStripCOMtext = Properties.Settings.Default.COMPORT;
            //setting dialog bezárás
            Close();
        }

        private void closeButton_Click(object sender, EventArgs e)
        {
            
        }

    }
}
